# coding: utf-8
# デフォルトのパートデータを作成

import json

# 構造を取得
f = open("part-struct.json")
PART_STRUCT = json.load(f)
f.close()

# パラメータの展開
for key, part_data in PART_STRUCT.items():
    for i, param in enumerate(part_data):
        # 文字列だった場合, 展開する
        if isinstance(param, str):
            # 文字列要素削除
            del part_data[i]
            # 左右の要素に分ける
            left    = part_data[:i]
            right   = part_data[i:]
            # 文字列タイプに対応するパラメータを代入
            temp = []
            temp.extend( left )
            temp.extend( PART_STRUCT[param] )
            temp.extend( right )
            # 追加
            PART_STRUCT[key] = temp
        
    

# 表示
for key, part_data in PART_STRUCT.items():
    print('<', key, '>')
    for i, param in enumerate(part_data):
        print("    ", param)
